/*============================================================================*/
/*                   CONTINENTAL AUTOMOTIVE SYSTEMS                           */
/*============================================================================*/
/*                        OBJECT SPECIFICATION                                */
/*============================================================================*
* name:            HALPorts.c
* version:         1.1
* created_by:      Lizette Acosta/Rodrigo Casados
* date_created:    June 22 2013
*=============================================================================*/
/* DESCRIPTION : Initializes ports                                            */
/*============================================================================*/
/* FUNCTION COMMENT : Implements entry point (main function) and other        */
/* application stuff.                                                         */
/*                                                                            */
/*============================================================================*/
/*  REVISION |   DATE      |                               |      AUTHOR      */
/*----------------------------------------------------------------------------*/
/*  1.1      | 22/June/2013 |                              | Lizette Acosta   */
/*                                                           Rodrigo Casados  */
/*============================================================================*/

#include "HALPorts.h"

uint16_t AppFlag2=0;

void vfnPorts_InitPorts(void)
{
	vfnInitIoapi_Leds();
	vfnInitIoapi_Bttns();
}

void vfnPorts_LedOFF(void)
{
	IO_PinWrite(pin_PA14,0); 
	IO_PinWrite(pin_PA15,0);
	AppFlag2=TRUE;		
}

void vfnPorts_LedUP(void)
{
	IO_PinWrite(pin_PA14,1); 
	IO_PinWrite(pin_PA15,0);	
}
void vfnPorts_LedDOWN(void)
{
	IO_PinWrite(pin_PA14,0); 
	IO_PinWrite(pin_PA15,1);
}

void vfnPorts_Led0(void)
{
	IO_PinWrite(pin_PA0,0); 
	IO_PinWrite(pin_PA2,0);
	IO_PinWrite(pin_PA4,0);
	IO_PinWrite(pin_PA6,0);
	IO_PinWrite(pin_PA8,0); 
	IO_PinWrite(pin_PA1,0);
	IO_PinWrite(pin_PA3,0);
	IO_PinWrite(pin_PA5,0);
	IO_PinWrite(pin_PA7,0);
	IO_PinWrite(pin_PA9,0);
}

void vfnPorts_Led1(void)
{
	IO_PinWrite(pin_PA0,1); 
	IO_PinWrite(pin_PA2,0);
	IO_PinWrite(pin_PA4,0);
	IO_PinWrite(pin_PA6,0);
	IO_PinWrite(pin_PA8,0); 
	IO_PinWrite(pin_PA1,0);
	IO_PinWrite(pin_PA3,0);
	IO_PinWrite(pin_PA5,0);
	IO_PinWrite(pin_PA7,0);
	IO_PinWrite(pin_PA9,0);
}

void vfnPorts_Led2(void)
{
	IO_PinWrite(pin_PA0,1); 
	IO_PinWrite(pin_PA2,1);
	IO_PinWrite(pin_PA4,0);
	IO_PinWrite(pin_PA6,0);
	IO_PinWrite(pin_PA8,0); 
	IO_PinWrite(pin_PA1,0);
	IO_PinWrite(pin_PA3,0);
	IO_PinWrite(pin_PA5,0);
	IO_PinWrite(pin_PA7,0);
	IO_PinWrite(pin_PA9,0);
}

void vfnPorts_Led3(void)
{
	IO_PinWrite(pin_PA0,1); 
	IO_PinWrite(pin_PA2,1);
	IO_PinWrite(pin_PA4,1);
	IO_PinWrite(pin_PA6,0);
	IO_PinWrite(pin_PA8,0); 
	IO_PinWrite(pin_PA1,0);
	IO_PinWrite(pin_PA3,0);
	IO_PinWrite(pin_PA5,0);
	IO_PinWrite(pin_PA7,0);
	IO_PinWrite(pin_PA9,0);
}

void vfnPorts_Led4(void)
{
	IO_PinWrite(pin_PA0,1); 
	IO_PinWrite(pin_PA2,1);
	IO_PinWrite(pin_PA4,1);
	IO_PinWrite(pin_PA6,1);
	IO_PinWrite(pin_PA8,0); 
	IO_PinWrite(pin_PA1,0);
	IO_PinWrite(pin_PA3,0);
	IO_PinWrite(pin_PA5,0);
	IO_PinWrite(pin_PA7,0);
	IO_PinWrite(pin_PA9,0);
}

void vfnPorts_Led5(void)
{
	IO_PinWrite(pin_PA0,1); 
	IO_PinWrite(pin_PA2,1);
	IO_PinWrite(pin_PA4,1);
	IO_PinWrite(pin_PA6,1);
	IO_PinWrite(pin_PA8,1); 
	IO_PinWrite(pin_PA1,0);
	IO_PinWrite(pin_PA3,0);
	IO_PinWrite(pin_PA5,0);
	IO_PinWrite(pin_PA7,0);
	IO_PinWrite(pin_PA9,0);
}

void vfnPorts_Led6(void)
{
	IO_PinWrite(pin_PA0,1); 
	IO_PinWrite(pin_PA2,1);
	IO_PinWrite(pin_PA4,1);
	IO_PinWrite(pin_PA6,1);
	IO_PinWrite(pin_PA8,1); 
	IO_PinWrite(pin_PA1,1);
	IO_PinWrite(pin_PA3,0);
	IO_PinWrite(pin_PA5,0);
	IO_PinWrite(pin_PA7,0);
	IO_PinWrite(pin_PA9,0);
}

void vfnPorts_Led7(void)
{
	IO_PinWrite(pin_PA0,1); 
	IO_PinWrite(pin_PA2,1);
	IO_PinWrite(pin_PA4,1);
	IO_PinWrite(pin_PA6,1);
	IO_PinWrite(pin_PA8,1); 
	IO_PinWrite(pin_PA1,1);
	IO_PinWrite(pin_PA3,1);
	IO_PinWrite(pin_PA5,0);
	IO_PinWrite(pin_PA7,0);
	IO_PinWrite(pin_PA9,0);
}

void vfnPorts_Led8(void)
{
	IO_PinWrite(pin_PA0,1); 
	IO_PinWrite(pin_PA2,1);
	IO_PinWrite(pin_PA4,1);
	IO_PinWrite(pin_PA6,1);
	IO_PinWrite(pin_PA8,1); 
	IO_PinWrite(pin_PA1,1);
	IO_PinWrite(pin_PA3,1);
	IO_PinWrite(pin_PA5,1);
	IO_PinWrite(pin_PA7,0);
	IO_PinWrite(pin_PA9,0);
}

void vfnPorts_Led9(void)
{
	IO_PinWrite(pin_PA0,1); 
	IO_PinWrite(pin_PA2,1);
	IO_PinWrite(pin_PA4,1);
	IO_PinWrite(pin_PA6,1);
	IO_PinWrite(pin_PA8,1); 
	IO_PinWrite(pin_PA1,1);
	IO_PinWrite(pin_PA3,1);
	IO_PinWrite(pin_PA5,1);
	IO_PinWrite(pin_PA7,1);
	IO_PinWrite(pin_PA9,0);
}

void vfnPorts_Led10(void)
{
	IO_PinWrite(pin_PA0,1); 
	IO_PinWrite(pin_PA2,1);
	IO_PinWrite(pin_PA4,1);
	IO_PinWrite(pin_PA6,1);
	IO_PinWrite(pin_PA8,1); 
	IO_PinWrite(pin_PA1,1);
	IO_PinWrite(pin_PA3,1);
	IO_PinWrite(pin_PA5,1);
	IO_PinWrite(pin_PA7,1);
	IO_PinWrite(pin_PA9,1);
}


uint16_t Ports_Ledwait(void)
{
uint16_t i,j;	
	for(i=0; i< 400; i++)
	{
		for(j=0; j<6000; j++){}
	}	
}